// 导入createStore函数，创建store实例
import { createStore, createLogger } from 'vuex'
// 导入 vuex持久化插件
import createPersistedstate from 'vuex-persistedstate'

// 导入子模块
import user from './modules/user'
import cart from './modules/cart'
import car from './modules/car'

// 导入全局getters
import getters from './getters'
export default createStore({
  // 添加getters模块
  getters,
  // 注册子模块
  modules: {
    user,
    cart,
    car
  },
  // 通过插件处理模块下的数据,给store 配置插件的地方
  plugins: [
    // 数据持久化插件
    createPersistedstate({
      // 存储到本地的键名
      key: 'erabbit-client-pc-store',
      // 指明模块名、持久化哪些子模块下的数据
      paths: ['user', 'cart', 'car']
    }
    ),
    // 调用控制台打印日志函数
    createLogger()
  ]

})
